Rapid and Agile Stability

نویسنده

  • Felix Bachmann
چکیده

The essence of stability in software development is the ability to produce quality software with infrastructure that will meet long-term business goals. The essence of rapid and agile development is the ability to deliver capabilities quickly based on customer priorities. Stability often requires cross-functional analysis and infrastructure support that will build foundational technology for the capabilities to stand on, which takes time and resources. But today’s organizations must attend to both agility and enduring design. This article presents three tactics that support rapid and agile stability: aligning feature-based development and system decomposition, creating an architectural runway, and using matrix teams. Felix Bachmann, SEI Robert L. Nord, SEI Ipek Ozkaya, SEI Architectural Tactics to Support Rapid and Agile Stability Today’s organizations must design, develop, deploy, and sustain systems for several decades and manage system and software engineering challenges simultaneously; neither agility nor attention to enduring design can be dispensed with [1]. Systems developed at such a scale go through several funding and review cycles and are typically meant to operate for several decades, so longevity and stability are key goals. Shrinking defense budgets and continued demand for new capabilities add pressure to use rapid and agile development and deployment. All software-intensive systems relevant to the DoD fit this description due to the existing acquisition processes and the need to support the systems for extended periods of time in the field in order to manage costs. This article presents the lessons we learned from our interactions with teams and individuals in the roles of Scrum master, developer, project manager, and architect on projects from organizations that develop embedded real-time software or cyber-physical systems. We observed that the following symptoms surface from the lack of stability to sustain rapid and agile software development: Current State Desired State State of Agile Team Support Time Preparation Preservation Figure 1: Infrastructure support for agile development teams over time ronments and processes, exist that support efficient, independent development of user features. If the desired state does not yet exist, the agile teams first go through a preparation phase (Figure 1). The goal of this phase is to do all the preparation required to move to the desired state. During this phase, the teams can deliver releases, but they will not deliver as much value to the stakeholders as they would if they were in the desired state. This is because many tasks focus on maturing the platforms, frameworks, and tool environments. Once they have achieved the desired state, agile teams enter the preservation phase. The goal of this phase is to maintain the desired state by dealing with technical debt, changing requirements, and new technologies. In this phase, it is critical to neither over-optimize the development infrastructure nor to quit working on it. Over-optimization incurs cost without much benefit for the

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Study of Enabling Factors for Rapid Fielding

Agile projects are showing greater promise in rapid fielding as compared to waterfall projects. However, there is a lack of clarity regarding what really constitutes and contributes to success. We interviewed project teams with incremental development lifecycles, from five government and commercial organizations, to gain a better understanding of success and failure factors for rapid fielding o...

متن کامل

Analyzing Indexes of Agile Reverse logistics Using Interpretive Structural Modeling Approach

With development of technology and science and continuous increase in productivity, product life cycles are shortened and customer demands are more personalized and diversified, which makes companies face with ever changing and unpredictable competitive environment. Therefore, rapid response to market competition has become one of the main focuses and the competitive advantages. Today, one of t...

متن کامل

Analyzing Indexes of Agile Reverse logistics Using Interpretive Structural Modeling Approach

With development of technology and science and continuous increase in productivity, product life cycles are shortened and customer demands are more personalized and diversified, which makes companies face with ever changing and unpredictable competitive environment. Therefore, rapid response to market competition has become one of the main focuses and the competitive advantages. Today, one of t...

متن کامل

Elaboration on an Integrated Architecture and Requirement Practice

Projects seeking rapid, sustainable delivery are combining agile and architecture practices to manage competing goals of speed in the short term and stability. In a recent study, we interviewed eight government and commercial project teams that have adopted incremental and iterative software development approaches and identified a mix of Agile and architecture practices that teams apply to rapi...

متن کامل

Applying Agile Methodologies to It Security

Security threats to IT systems have become extremely dynamic, requiring a rapid response. Because of this, traditional life cycle approaches to IT security may not work. Agile methodologies provide a framework for rapid response in a dynamic environment. This paper discusses the fundamentals of agile methodologies and how they can be applied to IT

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012